// #include<bits/stdc++.h>
// using namespace std;
// #define int long long
// signed main() {
// 	int t;
// 	cin >> t;
// 	while (t--) {
// 		int x, y;
// 		cin >> x >> y;
// 		int ans = sqrt(x * y);
// 		int flag = 0;
// 		for (int i = 1; i <= ans; i++) {
// 			if (x * y % i == 0 && __gcd(i, x * y / i) == x) {
// 				cout << i << " " << x*y / i << endl;
// 				flag = 1;
// 				break;
// 			}
// 		}
// 		if (!flag)
// 			cout << "-1" << endl;
// 	}
// 	return 0;
// }

#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main() {
	int t;
	cin >> t;
	while (t--) {
		int n, k;
		cin >> n >> k;
		vector<int> a(n);
		for (int i = 0; i < n; i++) {
			cin >> a[i];
		}
		sort(a.begin(), a.end());
		if (a[n - 1] - a[0] > 2 * k) {
			cout << "No" << endl;
		} else {
			cout << "Yes" << endl;
		}
	}
	return 0;
}

